// 引入创建上下文实例对象的方法createApp 这个方法
import { createApp } from 'vue'
// 引入pinia
import pinia from './stores'
// 引入ElementPlus组件库
import ElementPlus from 'element-plus'
// 引入ElementPlus组件库的中文包
import zhCn from 'element-plus/es/locale/lang/zh-cn'
// 引入ElementPlus的样式文件
import 'element-plus/dist/index.css'
// 引入App组件
import App from './App.vue'
// 引入路由器对象
import router from './router'
// 引入全局公共样式文件
import './styles/index.scss'
// 引入Element中的svg格式图片的组件 
import ElSvg from './components/SvgIcon/ElSvg'
// 引入并执行路由权限相关的文件
import './permission'
// 引入按钮鉴权的自定义指令
import has from './directives/has'

// 创建上下文实例
const app = createApp(App)
// 使用svg组件
ElSvg(app)

app.use(pinia)  // 注册pinia仓库
  .use(router)  // 注册路由器
  .use(ElementPlus, { //使用ElementPlus组件库及中文包
    locale: zhCn,
  })
  .use(has)
  .mount('#app') //挂载
